-- Network Working Group K. McCloghrie, Editor
-- Request for Comments: 1229 Hughes LAN Systems, Inc.
-- May 1991
--
--
-- Extensions to the Generic-Interface MIB
--RFC1229-MIB DEFINITIONS::=BEGIN-- Extensions to MIB-II's Generic Interface Table-- This MIB is a copy of RFC-1229 updated with the-- OID re-assignments detailed in RFC-1239. Please
-- see RFC-1229 and RFC-1239 for more details.IMPORTSCounterFROM RFC1155-SMI
mib-2,DisplayString,PhysAddressFROM RFC1213-MIB
OBJECT-TYPEFROM RFC-1212;ifExtensions OBJECTIDENTIFIER::={ mib-2 12}-- Generic Interface Extension Table
---- This group of objects is mandatory for all types of-- subnetwork interface.ifExtnsTable OBJECT-TYPESYNTAXSEQUENCEOF IfExtnsEntry
ACCESSnot-accessibleSTATUSmandatoryDESCRIPTION"A list of interfaces extension entries.
The number of entries is given by the value
of ifNumber, defined in [4,6]."::={ ifExtensions 1}
ifExtnsEntry OBJECT-TYPESYNTAX IfExtnsEntry
ACCESSnot-accessibleSTATUSmandatoryDESCRIPTION"An extension to the interfaces entry,
defined in [4,6], containing additional
objects at the subnetwork layer and below
for a particular interface."INDEX{ ifExtnsIfIndex }::={ ifExtnsTable 1}
IfExtnsEntry ::=SEQUENCE{
ifExtnsIfIndex
INTEGER,
ifExtnsChipSet
OBJECTIDENTIFIER,
ifExtnsRevWare
DisplayString,
ifExtnsMulticastsTransmittedOks
Counter,
ifExtnsBroadcastsTransmittedOks
Counter,
ifExtnsMulticastsReceivedOks
Counter,
ifExtnsBroadcastsReceivedOks
Counter,
ifExtnsPromiscuous
INTEGER}ifExtnsIfIndex OBJECT-TYPESYNTAXINTEGERACCESSread-onlySTATUSmandatoryDESCRIPTION"The value of this object identifies the
interface for which this entry contains
extended management information. The value
of this object for a particular interface
has the same value as the ifIndex object,
defined in [4,6], for the same interface."::={ ifExtnsEntry 1}ifExtnsChipSet OBJECT-TYPESYNTAXOBJECTIDENTIFIERACCESSread-onlySTATUSmandatoryDESCRIPTION"This object identifies the hardware chip
set being used in the interface. The
assignment of OBJECT IDENTIFIERs to various
types of hardware chip sets is managed
by the IANA. If the hardware chip set is
unknown, the object identifier
unknownChipSet OBJECT IDENTIFIER ::= { 0 0 }
is returned. Note that unknownChipSet is a
syntactically valid object identifier, and
any conformant implementation of ASN.1 and
the BER must be able to generate and
recognize this value."::={ ifExtnsEntry 2}
ifExtnsRevWare OBJECT-TYPESYNTAXDisplayString(SIZE(0..255))ACCESSread-onlySTATUSmandatoryDESCRIPTION"An arbitrary octet string that describes
the firmware version of this interface.
It is intended that this should be human
readable. It must only contain ASCII
printable characters. Typically this
will be the firmware version of the main
interface software."::={ ifExtnsEntry 3}ifExtnsMulticastsTransmittedOks OBJECT-TYPESYNTAXCounterACCESSread-onlySTATUSmandatoryDESCRIPTION"The count of frames successfully
transmitted to a subnetwork or link-layer
multicast destination address other than a
broadcast address. For a MAC layer protocol,
this includes both Group and Functional
addresses."::={ ifExtnsEntry 4}ifExtnsBroadcastsTransmittedOks OBJECT-TYPESYNTAXCounterACCESSread-onlySTATUSmandatoryDESCRIPTION"The count of frames successfully
transmitted to a subnetwork or link-layer
broadcast addresses. It does not include
frames sent to a multicast address."::={ ifExtnsEntry 5}ifExtnsMulticastsReceivedOks OBJECT-TYPESYNTAXCounterACCESSread-onlySTATUSmandatoryDESCRIPTION"The count of frames successfully received
that are directed to an active subnetwork
or link-layer multicast address (for a MAC
layer protocol, this includes both Group and
Functional addresses). This does not include
frames directed to a broadcast address, nor
frames received with errors."::={ ifExtnsEntry 6}ifExtnsBroadcastsReceivedOks OBJECT-TYPESYNTAXCounterACCESSread-onlySTATUSmandatoryDESCRIPTION"The count of frames successfully received
that are directed to a subnetwork or
link-layer broadcast address. This does not
include frames received with errors."::={ ifExtnsEntry 7}ifExtnsPromiscuous OBJECT-TYPESYNTAXINTEGER{true(1),false(2)}ACCESSread-only-- Note: agent implementors are-- encouraged to extend this
-- access to read-write if that-- makes sense in their agent.STATUSmandatoryDESCRIPTION"This object has a value of false(2) if
this interface only accepts packets/frames
that are addressed to this station. This
object has a value of true(1) when the
station accepts all packets/frames
transmitted on the media. The value
true(1) is only legal on certain types of
media. If legal, setting this object to a
value of true(1) may require the interface
to be reset before becoming effective."::={ ifExtnsEntry 8}---- Generic Interface Test Table---- This group of objects is optional, but if the table is-- implemented, all objects in the table must be implemented.ifExtnsTestTable OBJECT-TYPESYNTAXSEQUENCEOF IfExtnsTestEntry
ACCESSnot-accessible
STATUSmandatoryDESCRIPTION"This table contains one entry per interface."::={ ifExtensions 2}ifExtnsTestEntry OBJECT-TYPESYNTAX IfExtnsTestEntry
ACCESSnot-accessibleSTATUSmandatoryDESCRIPTION"An entry containing objects for invoking
tests on an interface."
INDEX{ ifExtnsTestIfIndex }::={ ifExtnsTestTable 1}
IfExtnsTestEntry ::=SEQUENCE{
ifExtnsTestIfIndex
INTEGER,
ifExtnsTestCommunity
OCTETSTRING,
ifExtnsTestRequestId
INTEGER,
ifExtnsTestType
OBJECTIDENTIFIER,
ifExtnsTestResult
INTEGER,
ifExtnsTestCode
OBJECTIDENTIFIER}ifExtnsTestIfIndex OBJECT-TYPESYNTAXINTEGERACCESSread-onlySTATUSmandatoryDESCRIPTION"The value of this object identifies the
interface for which this entry contains
information on interface tests. The value
of this object for a particular interface
has the same value as the ifIndex object,
defined in [4,6], for the same interface."::={ ifExtnsTestEntry 1}ifExtnsTestCommunity OBJECT-TYPESYNTAXOCTETSTRINGACCESSread-onlySTATUSmandatoryDESCRIPTION"This object contains the name of the SNMP
authentication community [5] which was used
to authenticate the SNMP Message which invoked
the current or most recent test on this
interface. If the authentication community
is unknown or undefined, this value contains
the zero-length string."::={ ifExtnsTestEntry 2}ifExtnsTestRequestId OBJECT-TYPESYNTAXINTEGERACCESSread-onlySTATUSmandatory
DESCRIPTION"This object contains the value of the
request-id field in the SNMP PDU [5] which
invoked the current or most recent test on
this interface. If the request-id is
unknown or undefined, this value contains
the value zero."::={ ifExtnsTestEntry 3}ifExtnsTestType OBJECT-TYPESYNTAXOBJECTIDENTIFIERACCESSread-write
STATUSmandatoryDESCRIPTION"A control variable used to start and stop
operator-initiated interface tests.
Most OBJECT IDENTIFIER values assigned
to tests are defined elsewhere, in associ-
ation with specific types of interface.
However, this document assigns a value for
a full-duplex loopback test, and defines the
special meanings of the subject identifier:
noTest OBJECT IDENTIFIER ::= { 0 0 }
When the value noTest is written to this
object, no action is taken unless a test is
in progress, in which case the test is
aborted. Writing any other value to this
object is only valid when no test is
currently in progress, in which case the
indicated test is initiated.
Note that noTest is a syntactically valid
object identifier, and any conformant
implementation of ASN.1 and BER must be able
to generate and recognize this value.
When read, this object always returns
the most recent value that ifExtnsTestType
was set to. If it has not been set since
the last initialization of the network
management subsystem on the agent, a value
of noTest is returned."::={ ifExtnsTestEntry 4}wellKnownTests OBJECTIDENTIFIER::={ ifExtensions 4}-- full-duplex loopback testtestFullDuplexLoopBack OBJECTIDENTIFIER::={ wellKnownTests 1}ifExtnsTestResult OBJECT-TYPE
SYNTAXINTEGER{none(1),-- no test yet requestedsuccess(2),inProgress(3),notSupported(4),unAbleToRun(5),-- due to state of system
aborted(6),failed(7)}ACCESSread-onlySTATUSmandatoryDESCRIPTION"This object contains the result of the most
recently requested test, or the value
none(1) if no tests have been requested since
the last reset. Note that this facility
provides no provision for saving the results
of one test when starting another, as could
be required if used by multiple managers
concurrently."::={ ifExtnsTestEntry 5}ifExtnsTestCode OBJECT-TYPESYNTAXOBJECTIDENTIFIERACCESSread-onlySTATUSmandatoryDESCRIPTION"This object contains a code which contains
more specific information on the test result,
for example an error-code after a failed
test. Error codes and other values this
object may take are specific to the type of
interface and/or test. However, one subject
identifier:
testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
for use if no additional result code is
available.
Note that testCodeUnknown is a
syntactically valid object identifier, and
any conformant implementation of ASN.1 and
the BER must be able to generate and
recognize this value."::={ ifExtnsTestEntry 6}
-- Generic Receive Address Table---- This group of objects is mandatory for all types of-- interfaces which can receive packets/frames addressed to-- more than one address.ifExtnsRcvAddrTable OBJECT-TYPESYNTAXSEQUENCEOF IfExtnsRcvAddrEntry
ACCESSnot-accessibleSTATUSmandatoryDESCRIPTION
"This table contains an entry for each
address (broadcast, multicast, or uni-cast)
for which the system will receive packets/
frames on a particular interface. When an
interface is operating in promiscuous mode,
entries are only required for those addresses
for which the system would receive frames
were it not operating in promiscuous mode."::={ ifExtensions 3}ifExtnsRcvAddrEntry OBJECT-TYPESYNTAX IfExtnsRcvAddrEntry
ACCESSnot-accessible
STATUSmandatoryDESCRIPTION"A list of objects identifying an address
for which the system will accept packets/
frames on a particular interface."INDEX{ ifExtnsRcvAddrIfIndex, ifExtnsRcvAddress }::={ ifExtnsRcvAddrTable 1}
IfExtnsRcvAddrEntry ::=SEQUENCE{
ifExtnsRcvAddrIfIndex
INTEGER,
ifExtnsRcvAddress
PhysAddress,
ifExtnsRcvAddrStatus
INTEGER}ifExtnsRcvAddrIfIndex OBJECT-TYPESYNTAXINTEGERACCESSread-onlySTATUSmandatoryDESCRIPTION"The value of ifIndex, defined in [4,6], of an
interface which recognizes this entry's
address."::={ ifExtnsRcvAddrEntry 1}ifExtnsRcvAddress OBJECT-TYPESYNTAXPhysAddressACCESSread-onlySTATUSmandatoryDESCRIPTION"An address for which the system will accept
packets/frames on this entry's interface."::={ ifExtnsRcvAddrEntry 2}
ifExtnsRcvAddrStatus OBJECT-TYPESYNTAXINTEGER{other(1),invalid(2),volatile(3),nonVolatile(4)}ACCESSread-writeSTATUSmandatory
DESCRIPTION"This object has the value nonVolatile(4)
for those entries in the table which are
valid and will not be deleted by the next
restart of the managed system. Entries
having the value volatile(3) are valid
and exist, but have not been saved, so
that will not exist after the next
restart of the managed system. Entries
having the value other(1) are valid and
exist but are not classified as to whether
they will continue to exist after the next
restart. Entries having the value invalid(2)
are invalid and do not represent an address
for which an interface accepts frames.
Setting an object instance to one of
the values other(1), volatile(3), or
nonVolatile(4) causes the corresponding
entry to exist or continue to exist, and
to take on the respective status as regards
the next restart of the managed system.
Setting an object instance to the value
invalid(2) causes the corresponding entry
to become invalid or cease to exist.
It is an implementation-specific matter
as to whether the agent removes an
invalidated entry from the table.
Accordingly, management stations must be
prepared to receive tabular information
from agents that corresponds to entries not
currently in use. Proper interpretation of
such entries requires examination of the
relevant ifExtnsRcvAddrStatus object
instance."DEFVAL{ volatile }::={ ifExtnsRcvAddrEntry 3}END